namespace SharpTalk.Core.Interfaces
{
    using System;
    /// <summary>
    /// IUser contract interface
    /// </summary>
    public interface IUser 
        : IGuid, IUserStatus, IImage, IEquatable<IUser>
    {
        /// <summary>
        /// Obtain or define the first name of the user
        /// </summary>
        string FirstName { get; set; }
        /// <summary>
        /// Obtain or define the last name of the user
        /// </summary>
        string LastName { get; set; }
        /// <summary>
        /// Obtain or define the user nickname
        /// </summary>
        string NickName { get; set; }
        /// <summary>
        /// Obtain the fullname of the user
        /// </summary>
        string FullName { get; }
    }
}